/*
 * File Name：OnPlayListener.java
 * Copyright：Copyright 2008-2013 CiWong.Inc. All Rights Reserved.
 * Description： OnPlayListener.java
 * Modify By：PLA-ZJLIU
 * Modify Date：2013-12-11
 * Modify Type：Add
 */
package com.ciwong.libs.audio.play;

/**
 * 播放监听事件接口
 * 
 * @author PLA-ZJLIU
 * @version ciwong v.1.0 2013-12-11
 * @since ciwong v.1.0
 */
public interface OnPlayListener
{
    /**
     * 准备播放
     * 
     * @param duration
     *            音频时间
     * @param mp3
     *            mp3的文件地址
     */
    void onReadPlayer(long duration, Object mp3);

    /**
     * 开始播放
     * 
     * @param mp3
     *            mp3的文件地址
     * 
     */
    void onPlayStart(Object mp3);

    /**
     * 结束播放
     * 
     * @param mp3
     *            mp3的文件地址
     */
    void stop(Object mp3);

    /**
     * 播放错误
     * 
     * @param errorCode
     *            错误码<br />
     *            {@link AudioPlayer#PLAY_ERROR_FILE_NOT_EXISTS}<br />
     *            {@link AudioPlayer#PLAY_ERROR_MP3}<br />
     *            {@link AudioPlayer#PLAY_ERROR_NOT_SUPORT_SCHEMA}<br />
     * @param mp3
     *            mp3的文件地址
     */
    void onError(int errorCode, Object mp3);

    /**
     * 
     * 缓冲中
     * 
     * @param mp3
     *            缓冲地址
     * @param progress
     *            当前进度
     * @param total
     *            总数
     */
    void onBuffer(Object mp3, long progress, long total);

    /**
     * 播放
     * 
     * @param total
     *            总时间，以毫秒为单位
     * @param cur
     *            当前进度，以毫秒为单位
     */
    void onPlaying(long total, long cur);

}
